1. Field of the Invention
The present invention relates to a server, a screen transmitting method, and a program storage medium storing a computer program for compressing image data on a screen and transmitting compressed data to a client terminal.
2. Related Art
There are screen sharing systems for delivering a desktop image on a screen in the form of packets from a server terminal (or server) to a client terminal in real time via a network. Such a screen sharing system allows a desktop image on one of the terminals to be shared by remote users on the both ends and can realize an efficient environment for collaborative activity across two locations via a network.
Methods for building of a screen sharing system include one that delivers what is being drawn on the entire desktop area of a server to a client terminal at regular time intervals and one that delivers only a modified portion together with its drawing coordinates every time an update has taken place in a drawing area on the desktop area. The latter method of delivering a difference has advantages of being able to utilize network bandwidths more efficiently and, furthermore, provide a large number of drawing frames per unit time when compared to the former method because data is generated only for a necessary portion in accordance with change in what is being drawn. Therefore, many of currently provided screen sharing systems provide their services using the mechanism of delivering only difference data.
When image data obtained on the server is transmitted, a technique of compressing the data with an appropriate compression scheme to reduce the amount of data and network load is generally employed. Various types of compression scheme are available for such compression. For instance, Joint Photograph Experts Group (JPEG) quantizes high-frequency components of image data more coarsely than low-frequency components so as to enable compression with at a high compression ratio especially for natural images such as photographic images. Portable Network Graphics (PNG) utilizes “gzip” (GNUzip) to enable compression at a high compression ratio especially for monotonic images such as character images. In general, an image drawn on the desktop of a server contains images having such various compression properties as mentioned above. Therefore, for efficient transmission of image data in a small data amount, it is required to select a scheme that exhibits a higher compression ratio with reference to information about compression properties of image data (compression property information).
A technique described in JP-A 10-126773 (Kokai) enables efficient reduction of data amount by applying a number of compression schemes to image data to be transmitted and at this time adopting a compression scheme having a higher compression ratio.
A technique described in JP-A 2006-338226 (Kokai) also enables acquisition of a data reduction effect by calculating the number of colors used in image data from a bitmap of the image data and identifying an appropriate compression scheme in accordance with the number of colors.
JP-A 2006-285302 (Kokai) discloses a method that focuses on the types of graphical user interface (GUI) components contained in image data. In an image displayed on the desktop of a server, various types of GUI components can be present. Thus, utilizing the property of similarity in compression properties possessed by image data contained in GUI components of the same type, the JP-A 2006-285302 (Kokai) stores information that shows compression properties corresponding to GUI component types and decides a compression scheme with reference to the information. It thereby can select a compression scheme appropriate for the property of a displayed image and compress the image at a high compression ratio.
The techniques described in JP-As 10-126773 and 2006-338226 (Kokai's) can select a suited compression scheme through a determination process on image data to be transmitted, such as comparing amounts of data compressed with plural compression schemes or analyzing the number of colors. However, they have to apply such a determination process to all image data to be transmitted and thus have the problem of increased load on a CPU.
Meanwhile, the technique described in JP-A 2006-285302 (Kokai) enables selection of an appropriate compression scheme by storing compression property information for each GUI component type and making reference to this information when deciding a compression scheme. However, this technique requires update of compression property information at certain time intervals in order to keep accuracy of selecting an appropriate compression scheme high, and has the problem of occurrence of update that would have been unnecessary when both GUI components for which compression property information significantly varies over time and ones for which such information is almost invariant exist together. That is to say, to keep the accuracy of compression property information relating to GUI components of the former type high, time interval of update should be set to a short period in advance, but it in turn causes repetitive update of information on GUI components of the latter type, which does not require frequent updating. As a result, processing that would not have been necessary is imposed on a CPU.
Thus, conventional techniques have the problem of difficulty in achieving compatibility between appropriate selection of a compression scheme for application to image data and reduction of CPU load associated with processing required for selecting an appropriate compression scheme.